[XEND] Revert changes in changeset 12328
authorAlastair Tse <atse@xensource.com>
Fri, 17 Nov 2006 17:03:59 +0000 (17:03 +0000)
committerAlastair Tse <atse@xensource.com>
Fri, 17 Nov 2006 17:03:59 +0000 (17:03 +0000)
Mistakenly reverted some fixes for rebooting, un-reverting.

Signed-off-by: Alastair Tse <atse@xensource.com>
tools/python/xen/xend/XendDomain.py

index 79b5aec1a6132048859c5b445b37f535b8e04721..0bf1b63a37e09473370d0434786def987012ad49 100644 (file)
@@ -377,24 +377,12 @@ class XendDomain:
         @rtype: None
         """
 
-        # update information for all running domains
-        # - like cpu_time, status, dying, etc.
         running = self._running_domains()
-        running_domids = [d['domid'] for d in running if d['dying'] != 1]
-
-        # remove domains that are not running from active domain list.
-        # The list might have changed by now, because the update call may
-        # cause new domains to be added, if the domain has rebooted.  We get
-        # the list again.        
-        for domid, dom in self.domains.items():
-            if domid not in running_domids and domid != DOM0_ID:
-                self._remove_domain(dom, domid)
-
         # Add domains that are not already tracked but running in Xen,
         # and update domain state for those that are running and tracked.
         for dom in running:
             domid = dom['domid']
-            if domid in self.domains and dom['dying'] != 1:
+            if domid in self.domains:
                 self.domains[domid].update(dom)
             elif domid not in self.domains and dom['dying'] != 1:
                 try:
@@ -408,6 +396,19 @@ class XendDomain:
                         log.exception("Hard destruction of domain failed: %d" %
                                       domid)
 
+        # update information for all running domains
+        # - like cpu_time, status, dying, etc.
+        # remove domains that are not running from active domain list.
+        # The list might have changed by now, because the update call may
+        # cause new domains to be added, if the domain has rebooted.  We get
+        # the list again.
+        running = self._running_domains()
+        running_domids = [d['domid'] for d in running if d['dying'] != 1]
+        for domid, dom in self.domains.items():
+            if domid not in running_domids and domid != DOM0_ID:
+                self._remove_domain(dom, domid)
+
+
 
     def _add_domain(self, info):
         """Add a domain to the list of running domains